Debugger Service
Debug Pane
The Debug pane is a tool that can be used to debug errors in the math section of a policy- or client-level transaction. This tool moves through execution steps in sequence and displays all math variables and their associated values at each step. Debugging not only walks through the transaction’s configuration but also automatically opens any called functions, steps through all of the math variables and displays values according to what was passed in from the transaction configuration.
Steps for Build Manager to Set Up Environment Properties
-
Log in to the OIRW application.
-
Click Environment Options and then Edit.
-
Enter the information for the environment
| Field Name | Description |
| Database Platform | Select the database/platform type used for the environment. |
| Database URL | Enter the JDBC/database connection URL for the Rules Palette. |
| Database User Name | Enter the database schema/username for the environment. |
| Database Password | Enter the password for the database user. |
| ATP | Enable or disable Oracle Autonomous Transaction Processing (ATP) support for the environment. |
| Debug Webservice URL | URL for the web service used to connect for remote debugging. |
| Debug User | Enter the user name configured for debugger access. |
| Debug Password | Enter the password associated with the debugger user. |
| NBU | Enable or disable NBU-specific debugging configuration. |
| IVS | Enable or disable IVS-specific debugging configuration. |
| Products | Enable product-specific configuration settings for the environment. |
| Release Management | Enable release management functionality for IVS environments. |
| Release Management Entry Environment | Marks the environment as the entry point for release management. |
| Database Platform | Select the database/platform type used for the environment. |
| Database URL | Enter the JDBC/database connection URL for the IVS database. |
| Database User Name | Enter the database schema/username for the environment. |
| Database Password | Enter the password for the database user. |
| IVS Environment | Enter the IVS environment identifier or name. |
| IVS Track Number | Enter the IVS track number associated with the environment. |
| Deployment Sequence | Define the deployment execution order for this environment. |
| Reuse Environment, Track & Sequence | Reuse the same environment, track, and deployment sequence configuration. |
| Search | Search for configured user mappings. |
| User Name | Displays the Rules Workbench user name. |
| Environment User Name | Displays the mapped environment/database user name. |
| Edit (Pencil Icon) | Modify an existing user mapping. |
| Delete (Delete Icon) | Remove a user mapping. |
| Add New | Add a new user mapping entry. |
| Import Users | Import user mappings from another source/environment. |
| Delete | Delete the selected environment configuration. |
| Update | Save changes made to the environment configuration. |
| Cancel | Discard unsaved changes and revert modifications. |
Start and Run a Debug Session
Debug functionality is available for transactions at both the policy level and the client level.
The methods for debugging the configuration are as follows. The buttons for these functions are located at the top of the Event List window.
-
Rewind: Return to the beginning of the configuration, allowing the user to start debugging over. All prior values calculated and displayed will be cleared, with the exception of the input values. -
Step Backward: Step back one line in the configuration. This will "undo" or "clear the step that was just performed and take the user to the previous step, calculating and displaying that step as if the one that occurred after it was never performed. -
Run: Ignore all breakpoints and process the entire transaction. -
Step Forward: Advance through the configuration one line at a time. On advancing, the line advanced to will be calculated and displayed. The Step Forward will step into and out of copybooks and functions, as determined by the configuration. -
Fast Forward: Advance through the configuration to the next breakpoint. The debugger will stop on the line where the breakpoint is checked. Breakpoints may be placed in copybooks and functions. If no breakpoints are set, the debugger will process the entire transaction.
Buttons Available in the Debug Pane
To start a debug session for a client-level transaction:
-
Open the transaction in the Rules Workbench. Make sure the transaction is checked in.
-
Go into the OIPA application and search for a client. Once the client is found, open the client record.
-
Add the client transaction to the client. This can be done by clicking the Add Activity tab on the Secondary menu and searching for the client transaction. When found, select it and click Add.
-
Leave the activity (transaction) in a pending status.
-
Go back to the Rules Workbench and click the Debug pane in the transaction.
-
Click the drop-down box next to Client and select the client where you just added the activity (transaction).
-
If the client is not listed, click the Search button to the right of the Client field. Select a client type from the drop-down box. Then enter any search criteria. The % sign can be used as a wildcard, but it cannot be the only value in a search field.
-
If the transaction is listed multiple times for the client in OIPA, then the Activity Date dropdown will populate according to effective date, with the most recent one at the top of the list.
-
Click the Debug button in the window. It will take a few minutes for the debugger to load. When complete, a message will appear indicating that the session loaded successfully.
-
Initiate the debug session by using one of the methods described above. The EventList Window steps through the math variables, highlighting the variable currently being processed, and the Context List Window displays the current state of each variable throughout the debug session.
Important: All translation, compilation and runtime errors must first be fixed in order to use the Debug pane. Debug can be performed when the transaction is checked-in or checked-out; however, configuration problems can only be fixed if the transaction is checked out.
To start a debug session for a policy-level transaction:
-
Open the transaction in the Rules Workbench. Make sure the transaction is checked in.
-
Go into the OIPA application and search for a policy. Once the policy is found, open the policy record.
-
Add the transaction to the policy. This can be done by clicking the Add Activity tab on the Secondary menu and searching for the transaction. When found, select it and click Add.
-
Leave the activity (transaction) in a pending status.
-
Go back to the Rules Workbench and click the Debug pane in the transaction.
-
Click the drop-down box next to Policy and select the policy where you just added the activity (transaction).
-
If the policy is not listed, click the Search button to the right of the Policy field, then enter any search criteria. The % sign can be used as a wildcard, but it cannot be the only value in a search field.
-
Click the Debug button in the window. It will take a few minutes for the debugger to load. When complete, a message will appear indicating that the session loaded successfully.
-
Initiate the debug session by using one of the methods described above. The EventList Window steps through the math variables, highlighting the variable currently being processed, and the Context List Window displays the current state of each variable throughout the debug session.
Important: All translation, compilation and runtime errors must first be fixed in order to use the Debug pane. Debug can be performed when the transaction is checked in or checked out; however, configuration problems can only be fixed if the transaction is checked out.
EventList Window
In the EventList window, the blue highlight indicates the math variable is part of the transaction. The green highlight indicates the math variable is part of a called function. Click on either of the highlighters to be brought to the math variable in the transaction or function configuration.
Important: Important: The remote debugger only debugs function rules within a transaction, not separately.
ContextList Window
Use the context list window to view the state of the math variable at each step in the debug session. When a valuation element is debugged. Clicking it will open a Policy Valuation window that displays valuation and fund information.
Note: To clear all values in the ContextList window and restart debugging, click the Rewind button at the top of the EventList window.
Important: Important: The Debugger will not display the values of MathUpdate math variables or the field itself.
Breakpoints
Another debugging feature is the ability to set up breakpoint(s) in the configuration. Breakpoints are places in the code where execution is stopped for debugging purposes. In the Rules Workbench, select as many breakpoints as needed by checking the Break Point checkbox. After breakpoints are selected, use the Run button in the EventList window to step through the configuration.
Important: Breakpoints can be set for a loop that then displays math variables and associated values for each iteration of the loop. Use the Run button to step through each iteration of a loop.
Breakpoint Column on Debug Pane